PhoA

Copyright ©2002-2004 Dmitry Kann. All rights reserved.


Purpose of the program

Last time becomes more and more popular to store pictures in an electronic presentation, as computer files. Undoubtedly this way has a lot of benefits comparately to keeping "hard copies" of photos, drawings etc: electronic picture does not takes so much space (a regular recordable CD-R disc can hold as much as about 5000 photos in JPEG format in quite good quality), it can be easily duplicated, shown and even presented at all to all of your and others' relatives, pals and enemies (the latter can be achieved by mailing it by email, it could be even better, particularly for pictures above 10-20 MB size).

Unfortunately a lot of pictures (those some thousands mentioned above) makes it extremely difficult to find out some. The most obvious and simple way is to arrange files into folders with the appropriate names ("We and our dog", "Our dog alone" etc), but this leads to more and more contradictions: how can you arrange pictures by date and, at once, by subject, by event and at the same time by place; how can you attach description to a picture (although some programs allow to write it in, they do it pretty difficult); how finally can you find from 1287 photos of you and your dog the one (and maybe the last one) in which your dog jumps on from 5th floor?

These task seemed unpretentious emboldened me to write a picture cataloguing program capable to arrange and search different pictures (drawings, photos, screenshots and all other stuff).

Like you or not, but the program's got the name PhoA - an acronym for 'Photo Album', and photo album files the program creates also wear extension .phoa.

Next >>


How it works

The main program principle is storing the links to the pictures, to be more specific, to picture files. As long as pictures are stored separately, it becomes possible to copy them independently from program, to view them with third-party tools as well as to reduce the space needed to copy a link.

Pictures are arranged (gathered) into groups, and the group are arranged hierarchically as a tree, similar to folder tree in the Windows Explorer. Groups are displayed as folders in the left program window pane while the pictures contained in the group do so in the right pane.

Note that groups does not contain links to pictures themselves. These links are stored in a common list (containing links to all photo album pictures), items of which containt description data.

Groups are filled from this common link list so groups contain "links to links to pictures". If that's still not clear then look to the picture:

What does it tell us about? It does tell us that picture once described in PhoA can be added to any (or even all) of the groups thus copying only link to it and keeping the actual link to the file (with appropriate description, date, place etc) only once.

Next >>


File formats

As was mentioned above, PhoA program works with photo album files having .phoa extension - such file holds:

  • photo album description text and settings;
  • picture list along with their descriptions;
  • folders-groups hierarchy, each holding a set of links to photo album images;
  • views' structures (PhoA version 1.0.1+).

.phoa files cannot be viewed directly and are opened only in PhoA. But starting with PhoA version 1.1.1a that is possible to create your own tools due to open PhoA file format specifications. Refer to program's home site for more detailed information.

Current version recognises the following formats as source image files (click a plus-button to expand the details):

Standard Windows and OS/2 bitmap images (*.bmp, *.rle, *.dib)

  • byte order: little endian
  • sample sizes: 1, 4, 8 bits per sample
  • color spaces: indexed, RGB(A)
  • compression formats: uncompressed, RLE

JPEG images (*.jpg; *.jpeg; *.jpe)

  • byte orders: little endian, big endian
  • sample sizes: 8 bits per sample
  • color spaces: grayscale, RGB

TIFF images (*.tif; *.tiff)

  • byte orders: little endian, big endian
  • sample sizes: 1, 2, 4, 8, 16 bits per sample
  • color spaces: indexed, grayscale, RGB(A), CMYK, L*a*b*
  • compression formats: uncompressed, packed bits, LZW, CCITT T.4 (raw and modified fax group 3, possibly word aligned), ThunderScan, Deflate, new style JPEG

GFI fax images (*.fax)

  • sample size: 1 bits per sample
  • color space: indexed
  • compression format: CCITT T.4 (raw and modified fax group 3)

SGI images (*.bw, *.rgb, *.rgba, *.sgi)

  • byte order: big endian
  • sample sizes: 1, 2, 4, 8, 16 bits per sample
  • color spaces: indexed, grayscale, RGB(A)
  • compression formats: uncompressed, RLE

Autodesk images files (*.cel; *.pic)

  • byte order: little endian
  • sample size: 8 bits per sample
  • color spaces: indexed
  • compression format: uncompressed

Truevision Targa images (*.tga; *.vst; *.icb; *.vda; *.win)

  • byte order: little endian
  • sample sizes: 5, 8 bits per sample
  • color spaces: gray scale, indexed, 15 bits RGB (555), 24 bits RGB(A)(888)
  • compression formats: uncompressed, RLE

ZSoft Paintbrush images (*.pcx, *.pcc)

  • byte order: little endian
  • sample sizes: 1, 2, 4, 8 bits per sample
  • color spaces: gray scale, indexed, RGB
  • compression formats: uncompressed, RLE

Word 5.x screen capture files (*.scr)

  • byte order: little endian
  • sample sizes: 1, 2, 4, 8 bits per sample
  • color spaces: indexed, gray scaleRGB
  • compression formats: uncompressed, RLE

Kodak Photo-CD images (*.pcd)

  • byte order: little endian
  • samples size: 8 bits per sample
  • color space: YCbCr
  • compression: PCD Huffmann
  • specials:
    • sizes: all resolutions, from 192 x 128 up to 6144 x 4096 (64 Base vaporware)
    • rotated: clockwise and counter-clockwise

Portable pixel/gray map images (*.ppm, *.pgm, *.pbm)

  • byte order: little endian
  • sample sizes: 1, 8 bits per sample
  • color spaces: gray scale, indexed, RGB
  • compression format: uncompressed
  • specials:
    • ASCII and Binary format

Dr. Halo images (*.cut, *.pal)

  • byte order: little endian
  • sample size: 8 bits per sample
  • color spaces: indexed
  • compression formats: RLE
  • specials:
    • external palette file (*.pal) is automatically loaded

CompuServe GIF images (*.gif)

  • byte order: little endian
  • sample sizes: 1, 4, 8 bits per sample
  • color spaces: indexed
  • compression format: LZW
  • specials:
    • interlaced, non-interlaced

SGI Wavefront images (*.rla, *.rpf)

  • byte order: big endian
  • sample size: 8 bits per sample
  • color space: RGB(A)
  • compression formats: RLE

Photoshop images (*.psd, *.pdd)

  • byte order: big endian
  • sample sizes: 1, 8, 16 bits per sample
  • color spaces: indexed, RGB, CMYK, CIE L*a*b*
  • compression formats: uncompressed, packed bits
  • special:
    • duo tone

Paint Shop Pro images (*.psp)

  • byte order: little endian
  • sample sizes: 1, 4, 8 bits per sample
  • color spaces: indexed, gray scale, RGB
  • compression formats: uncompressed, LZ77

Portable Network Graphic images (*.png)

  • byte order: big endian
  • sample sizes: 1, 2, 4, 8, 16 bits per sample
  • color spaces: indexed, grayscale (alpha), RGB(A)
  • compression format: LZ77
  • specials:
    • supported chunks: IHDR, IDAT, IEND, PLTE, gAMA, tRNS, bKGD
    • transparency support partially for RGB, which is stored as 32 bits format

The powerful image format support is implemented thanks to Mike Lischke.

Next >>


Thumbnails

Maximum dimensions of thumbnails being created for added pictures depend on album properties (ie. every photo album can hold its own thumbnail specifications), the default values is 150 by 150 pixels. If a picture does not fit these dimensions, thumbanail is created by scaling the picture appropriately.

PhoA thumbnails are always stored in JPEG format, which causes from the most effective compression of this format. You can control the quality of thumbnails being created with program settings: higher thumbnail quality simplifies picture identification but causes more space usage. Because thumbnails are contained within photo album files (*.phoa), their dimensions and quality directly affect resulting album file size as well as space allocated for album in memory when opening it.

Next >>


Major modes

PhoA program can work in two major modes:

  • browsing and arranging pictures;
  • viewing pictures.

These modes are functionally the same as in some well-known program (needn't to pronounce names). Things do not like making them twice...

Browse mode

In this mode the main application window is very similar to standard Windows Explorer: there's a group (folder) tree in the left pane, and thumbnail and their descriptions are being displayed in the right pane for the selected group. In the browse mode you are able to create new group in the album, to add, delete and edit pictures in a group, to drag-and-drop pictures across the groups as well as perform some additional operations.

learn more >>

View mode

That would be slightly strange if picture-arranging program doesn't have some functional tool for viewing them. In PhoA this mode allows viewing single pictures (source, ie. ones on that thumbnails are created). Viewing supports image scaling (zooming in/out) and scrolling it, advancing to the next, previous, the first and the next picture in the group, switching between full-screen and window modes.

learn more >>

Next >>


PhoA features and advantages

It's definitely obvious that PhoA gives you many benefits when working with the photos, drawings and other highly creative artworks:

  • The program does not require installation and (presently) consists of the only file phoa.exe. What does it mean? This means it can be copied along with created photo album file (*.phoa) everywhere you wish. When recording it on a CD-R having placed appropriate autorun.inf file to the root of the CD you can demostrate your pictures on any PC by simply inserting the CD in (on PCs keeping autorun feature turned on). The program won't blame you even if it couldn't find phoa.chm file beside, which represents PhoA Help System.
  • The program allows you to build up catalogues (called photo albums) on completely different pictures. Pictures are arranged into groups similar to folders in Windows Explorer. Source images can be almost of any raster format, and also a number of vector formats are supported. Details on supported file formats are here.
  • Each picture may contain date, place, film and frame number, keywords, description, author and so on. A thumbnail - shrinked view of a picture - is generated automatically (a number of resampling algorithms implemented). Thumbnail dimensions can be specified in photo album properties, thumbnails themselves are stored in the photo album file; this allows nearly instant photo album opening and viewing. Thumbnails are being compressed with JPEG algorithm and may be cached while viewing.
  • PhoA allows momentary photo album searches by picture file name, by date range, place, keywords, description text etc.; search results are displayed as a group-tree node and can be merged with pictures from any group.
  • Photo album file holds relative paths to pictures thus allowing to move it anywhere just keeping the photo album file's original relation to pictures. But when photo album file is placed on a different disk or on a network server (and vice versa: picture files are on a network disk while the photo album file resides on the local one), then the album file holds absolute paths and its placement relative to these pictures doesn't matter.
  • There's an option for displaying thumbnails' tooltips in the browse mode. Tooltips' content is also adjustable.
  • PhoA implements a picture sorting feature for selected group or the whole photo album. Sorting criteria include almost all available data, sorting set may contain arbitrary number of criteria; the last used set is remembered.
  • There are views implemented: a brand-new technology for the browse mode. You can classify a heap of pictures into folders with minimum efforts. The only requirement is that pictures' properties are properly filled. These properties are used for grouping pictures in tree folders. Possible grouping conditions are: by picture file path, by date and time (in various ways), by place, by keywords etc. Groupings may be cascaded, ie may be applied one by one, number of groupings is a matter of sanity. The result of the grouping (folder tree along with their pictures) may be easily put into any photo album group, and after that you can tweak them in usual way.
  • PhoA is capable for viewing pictures (in window or full-screen mode) as well as their descriptions. Viewing parameters are adjusted in program settings; there are slideshow mode, picture scaling (zoom in and out with a number of resampling algorithms) and panning with mouse or keyboard. Pictures are being decoded by a parallel thread thus allowing background loading while viewing another picture. Also there's an option for caching the last viewed picture.
  • The program supports clipboard operations: you can copy or cut selected pictures into the clipboard and paste them into another group or even another photo album.
  • There is fully operational undo system: any wrong operation may be rolled back (the same for group of operations). The undo buffer capacity is specified through PhoA settings.
  • There are also a number of tool features (statistics, inter-group operations etc.)
  • PhoA looks good, has pretty suave manner and a handly interface. What else you may need?

Note. Photo album file (.phoa) format is subject to change along with program is being developed. I will make maximum efforts to keep the downward compatibility, ie newer program versions should open (and even save) files of older versions.

Next >>


System requirements

For the program to install you need an operating system, some disk space and a bit of RAM. To be more specific, PhoA runs under Windows 95/98/ME/NT/2000/XP, takes approximately 2 MB of disk space and requires at least 16 MB of installed RAM. Because entire photo album file being opened is loaded into RAM, when opening file containing a lot of pictures (1000+) it is recommended to have adequate amount of RAM (32-64 MB on Windows 95/98/ME/NT, 128 MB on Windows 2000 & XP).

Next >>


Picture data

The current version of PhoA allows storage, retrieval and editing (if a field is editable) the following data for each picture. Moreover, if a field is marked as searchable you may search pictures by its data.
Name | Data type | Editable | Searchable | Description
ID | Ordinal | No | Yes | Internal unique picture identifier. In the photo album always has the only corresponding file name. Used for identifying the picture, and for creating links to it.
Picture file name | Filename string | No | Yes | Picture file name (without path)
Full picture file name | Filename string | No | No | Picture file name with path. Full file name is an unique value among all photo album pictures.
Picture file path | String | No | Yes | Only path part of full picture file name.
Picture file size | String | No | No | "Human readable" representation of picture file size, eg 212,45 Kbytes or 839 bytes.
Picture file size in bytes | Integer | No | Yes | Picture file size expressed in bytes, eg 678233.
Picture width | Integer | No | Yes | Picture width in pixels.
Picture height | Integer | No | Yes | Picture height in pixels.
Picture dimensions | String | No | No | Pixel dimensions in pixels represented in form Width x Height, eg 1024x768.
Picture format | Pixel format | No | No | Pixel format of the image, eg 1-bit (monochrome) or Device dependent.
Date | Date | Yes | Yes | Date of events on the picture, ranged from Jan 1, 0001 to Dec 31, 9999.
Time | Time | Yes | Yes | Time of events on the picture, ranged from 00:00:01 (value of 00:00:00 assumed to be no value) to 23:59:59.
Place | String | Yes | Yes | Place of the picture.
Film number or name | String | Yes | Yes | If the picture was taken with film camera - number assigned to the film containing picture when it was being developed (unique as a rule), or name given to it by you.
Frame number | String | Yes | Yes | If the picture was taken with film camera - number of frame with the picture, eg 20 or 4A.
Author | String | Yes | Yes | Author's or photographer's, which made the picture, name.
Media name or code | String | Yes | Yes | Name of the media containing picture file (eg, CD-ROM number).
Keywords | String list | Yes | Yes | List of keywords regarding the picture - people or things, for exapmle. Always alphabetically sorted, comparison is always case insensitive.
Description | String | Yes | Yes | Brief description of what is picture displays, designated to be shown while viewing (the recommended purpose).
Notes | String | Yes | Yes | Any data not contained in other fields.

See also:

Browse mode
Working in the browse mode
Find pictures dialog
Edit pictures dialog


Resampling

Pictures often appear "fuzzy" when scaled to a different size. The fuzziness of an image is controlled by two processes: resampling and filtering.

The filtering processes attempt to smooth (blur) the transformed pixels. When an image is being resampled to a different resolution, there's a need to interpolate the old pixelmap to a new one. This requires some form of image interpolation and a number of interpolation methods can be used. The simpler and faster method, is to use nearest-neighbour function, known as the quick filter. Provided the resolution change is not too great, this is normally perfectly adequate. However, for large upsampling operations, the pixels can appear as large blocks. Equally under large downsampling operations, a phenomenon known as anti-aliasing can occur that makes the image appear fuzzy. In such cases, a more accurate interpolation routine can be used but this requires more time for the image to be processed. The most commonly used filters are nearest neighbor, bilinear and B-spline, in order of accuracy. The full list of filters implemented in PhoA follows:

  • Nearest neighbor;
  • Linear (bilinear);
  • B-spline (bicubic);
  • Lanczos;
  • Mitchell.


Metadata

Picture files may contain not only the graphic data, but also some additional (textual) data called metadata. Such metadata are placed to files by almost any digital camera, for instance, and contain as a rule date, time, taking conditions (digicam orientation, flash usage, F-number) etc.

These data may be viewed and even edited by some programs afterwards, and in general the represent quite reliable and valuable source of information, which is stored inside the picture file.

NB: The serious and not always obvious problem is that images can be open by any program disregarding whether contain they metadata or not, and also whether support these programs metadata or not - the file format allows this. The point is that you may easily lose these metadata if you open a file by some not-so-smart program just to, let's say, rotate the image for 90°. When you save the file, the metadata are gone, because the file gets overwritten. So use only smart programs!

Starting with version 1.1.1a, PhoA also gets quite cute thus now it supports reading the metadata of EXIF 2.1 specification - the format of metadata for JPEG files. Metadata read can be viewed, and also can be used for autofilling the picture properties (provided the corresponding options set).

Moreover, to contribute to programs become cute and educated I've decided to open sources for EXIF reading routines at PhoA website.


Revision History

This document summarizes differences between versions of PhoA in reverse chronological order.

PhoA 1.1.2

[Feb 07, 2004]

  • New interface languages: German (by Dominik Mayer) and Brazilian Portuguese (by Cesar Boschetti). Now PhoA supports 4 languages!
  • Background decoding thread's priority has been lowered. The result is that the picture already decoded is displayed significantly faster.
  • A stupid memory leak removed - the background decoding thread didn't terminate when viewing is finished.
  • Search by picture dimensions bugs fixed. Searching the file mask now checks just the file's name, not its full path.

PhoA 1.1.1b

[Sep 17, 2003]

  • New options for trees/lists: Incremental search on typing and Incremental search cleanup delay.
  • In the Picture properties dialog the first control on the page gets focused automatically.
  • Changes to Picture properties | Metadata: description panel, metatag code is now displayed.
  • Changes to Picture properties | View: wheel scaling is fixed.
  • Changes to Picture properties | Keywords: Checked only switch; new keywords are painted navy only when not highlighted.
  • Changes to Picture properties | Groups: speeded up the first time display.
  • An attempt made to fix font displaying in both Unicode- and non-Unicode-systems for various codepages/charsets.
  • Dialogs have been changed. Fixed large system font issues.
  • EXIF-tags list has been expanded, many tags have got descriptions.
  • Support for "non-regular" metatags: Unicode (WinXP-tags), Versions etc.
  • Fixed issue with PhoA denied to open 0.x version photo albums.
  • Fixed view mode bug: predecoding malfunctioned.
  • Fixed search bug: date, time and keyword searches were not working properly.
  • Fixed some memory leaks.
  • Minor changes.

PhoA 1.1.1a

[Sep 08, 2003]

  • Photo album file format changed - now it is very expandable and meant not to be changed frequently.
  • Modifications to folder tree appearance:
    • Views toolbar has been removed. Instead of it there is now a dropdown button beside the photo album node invoking views menu.
    • Pictures are now can be placed directly to the photo album node, having no group created.
    • Number of images is displayed beside the group name.
    • Altered Drag'n'Drop functioning: to insert a node as a sibling of another node (above or below), you'll have to drag the node to the free area on the right side of nodes, and then the insertion point is drawn as a line. To make a node a child of another node you drag this node right over the target node, then the target node gets highlighted. There's no more Shift button used (i mean while dragging ;)
    • When a node is being dragged the target node expands if you leave mouse over the target for a time. Also when mouse rests near the top or bottom edge (while dragging) the group tree starts to scroll.
    • Cosmetic changes (root items are drawn bold, Drag'n'Drop uses blended source folder image etc.)
    • Lists are adjustable.
  • Picture adding and editing have been completely separated. The goal was to remove compromises in the interface. Pictures are always being added with the defaults, you may edit them afterwards.
  • Changes to the Add pictures dialog:
    • The dialog became the wizard. On the first stage you select picture files and/or folder, on the second one you may exactly determine which files are to be added.
    • When adding pictures you can filter them by photo album presence, by name or extension, by date/time file modified.
    • Picture addition is performed in the separate thread which has improved the response to user actions.
    • Addition process is being logged, the log can be saved to a text file.
  • Fully functional support for JPEG-image metadata EXIF 2.1 - data placed to image files by almost any digicam as well as by modern graphic editors. Metadata can be used for filling some picture properties.
  • Many changes to Edit pictures dialog. In a nutshell:
    • Dialog became multipaged.
    • File properties page allows you to view file properties info.
    • Metadata page displays all the EXIF data contained in JPEG files.
    • View page enables file viewing for any selected file.
    • Data page is just a thing that was Edit pictures dialog + new properties.
    • Keywords page allows you to modify keyword list by adding, removing and editing single keywords for any number of pictures at once.
    • Groups page shows photo album group tree in which you can easily determine groups pictures belong to, or change these belongings.
  • Program settings were extended aloud.
  • You may now reorder pictures inside group using Drag'n'Drop (in the thumbnails pane).
  • Views now support automated sorting the pictures inside each group.
  • Thumbnail pane always selects the first thumbnail by default.
  • Undo history dialog has been removed: now you can undo any number of changes by clicking the dropdown button near the Undo toolbar button or with Edit | Undo history submenu.
  • All other trees displaying picture groups also have been altered - now they all look like the main tree.
  • The status bar displays the total number of distinct pictures in the photo album.
  • Local toolbar in the view mode.
  • Enhanced support for XP themes in toolbars and the thumbnail pane.
  • Lots of fixes, minor changes and new bugs.

PhoA 1.0.2a

[Jun 02, 2003]

  • By a lot of complaints against thumbnail quality there's resampling filtering option to eliminate shrinked picture's fuzziness. Possible filters are: Nearest Neighbor, Linear, B-spline (bicubic), Lanczos, Mitchell. As a side effect, owing to some smoothing of the thumbnail, its size (because of JPEG-compression) reduced by 10 thru 25% (eg, when using B-spline interpolation the decrease is 20-25%).
  • Significantly increased speed of rescaling and scrolling pictures. In the view mode you can also choose any of the resampling filters listed above.
  • Added option for decoding pictures in background: a separate thread is responsible for decoding the next picture while you are watching current one. This technique minimizes time required to advance to the next picture (but requires more memory).
  • Added option for caching-behind viewed pictures, which minimizes time to rewind to the previous picture (but also takes more memory).
  • The support for .gif files was not included. Fixed.
  • Added support for .msk (Paint Shop Pro mask), .tub (Paint Shop Pro picture tube), .pfr (Paint Shop Pro picture frame) file formats.
  • View info painting is completely changed. Now information is always positioned over the picture, optionally on a translucent background, and you can visually position information bar.
  • In multimonitor systems dialog windows were mispositioned. Fixed.

PhoA 1.0.1a

[May 17, 2003]

Huge number of differences resulted in program version and time taken to release it.

  • Views! Completely new picture arranging algorithm. Now you can classify a heap of pictures into folders with minimum efforts. The only requirement is that pictures' properties are properly filled. Possible grouping conditions are: by picture file path, by date (in various ways), by place, by keywords etc. Groupings may be cascaded, ie may be applied one by one, number of groupings is a matter of sanity. The result of the grouping (folder tree along with their pictures) may be easily put into any photo album group, and after then you can tweak them in usual way.
  • Photo album file (.phoa) format has been changed. Photo album files since version 1.0.1a contain views' data, and they are incompatible with the earlier PhoA versions. The program also supports saving files in PhoA 0.x format, which is choosed while saving the file (File | Save as...); accordingly, in this case views are not saved.
  • Sorting now can be performed by any number of criteria; it is organized in the similar way as views' groupings. The list of sorting criteria has been significantly extended.
  • You can now tweak thumbnail tooltips in Browse mode; you can choose which details are displayed.
  • Picture info in View mode is now also more adjustable.
  • Three options on toolbar buttons size (small/middle/large).
  • Massively extended support for picture file formats. Now almost all possible formats are supported (briefly: Windows bitmap (BMP, RLE, DIB), OS/2 bitmap, TIFF, GFI fax, SGI, Autodesk, Truevision Targa, ZSoft Paintbrush, Word 5.x, Kodak Photo-CD, Portable pixel/gray map, Dr. Halo CUT, CompuServe GIF, SGI Wavefront, Photoshop, Paint Shop Pro, Portable network graphic PNG; for details refer to the file formats discussion).
  • New algorithms for keyword processing (keywords containing spaces and/or commas are to be quoted; when selecting them from the list such keywords are quoted automatically; keywords are no longer converted to lowercase in the Select keywords dialog, though keywords are still compared case-insensitively).
  • A number of minor fixes (including fixed Access Violation in some cases while browsing).

PhoA 0.10 beta

[Jan 09, 2003]

  • The fully operational undo engine is built into PhoA.
  • New button "Add all" in the Add picture dialog, allowing unconditional addition of all picture files selected (using defaults).
  • Clipboard functionality implemented (cut, copy, paste).
  • Minor fixes (Browse mode; photo album stats).

PhoA 0.03

[Oct 20, 2002]

  • Completely bilingual version (English & Russian), including Setup program and Help System files.
  • Implemented Slide Show mode.
  • Minor changes.

PhoA 0.02b

[Sep 06, 2002]

  • The first public release.


License Agreement

Except where otherwise explicitly noted, all of the documentation and software included in the PhoA package is copyrighted by Dmitry Kann.

Copyright ©2002-2004 Dmitry Kann. All rights reserved.

This software is provided "as-is", without any express or implied warranty. In no event shall the author be held liable for any damages arising from the use of this software.

Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter and redistribute it, provided that the following conditions are met:

  1. All redistributions of packaged files must retain all copyright notices that are currently in place, and this list of conditions without any modification.
  2. All new redistributions resulted in translated to any language resources of PhoA in binary form must retain all occurences of the above copyright notice and web site addresses that are currently in place (for example, in the About boxes).
  3. The origin of this software must not be misrepresented; likewise, if you use this software to distribute a functional product, an acknowledgment in the product documentation would be greatly appreciated.
  4. Modified versions must be plainly marked as such, and must not be misrepresented as being the original software.

Updates: http://phoa.narod.ru/
Contact email: phoa@narod.ru

Major Contributors

  • Jordan Russel - TB2000 & InnoSetup
  • Alex Denisov - TBX & Graphics32
  • Mike Lischke - VirtualTree & GraphicEx
  • Jim Kueneman - VirtualShellTools

    • Translators

  • Dominik Mayer <dominik.mayer(at)web.de> - German
  • Cesar Boschetti <cesar(at)las.inpe.br> - Brazilian Portuguese


Major program modes

PhoA has two major modes:

  • picture browsing and arranging;
  • picture viewing.


Browse mode

As was mentioned above, browse mode is intended for photo album creation. This mode is just one the program starts in.

The main program window looks like standard Windows Explorer: the left pane holds folder-groups tree hierarchy while the right one gives us a list of thumbnails for the group selected in left pane.

Right to the left of the root tree node - photo album node you can see dropdown menu button, allowing you to display menu with photo album views commands, as well as for switching between views and photo album groups.

See also:

Browse mode menu commands
Working in the browse mode
Working with views


Browse mode menu commands

File menu

This menu contains commands for photo album file operations:

  • New photo album is created automatically on the program startup or when you select the File | New menu item. It erases all groups and pictures while photo album properties are being reset to their defaults.
  • To open a photo album file you created before, you select the File | Open... menu item. This command brings up standard dialog that allows you to select a file (wearing the .phoa extension).
  • To save photo album in the currently open file you select File | Save menu item.
  • To save it into another file - the File | Save as... menu item.
  • The File | Exit menu item confirms whether you wish to save changes (if there were any) and exits the program.
  • Below there are MRU (most recently used) files menu items (number of stored entries is adjusted with Program settings dialog)

Edit menu

This menu gathers photo album editing commands:

  • Edit | Undo operation menu item rolls back changes done to the photo album by signed (most recent) operation.
  • Edit | Undo history submenu item contains the changes made list, allowing you to roll back a number of sequential changes at once.
  • Edit | Cut menu item removes pictures highlighted and places it into the clipboard (you can add them later to another picture group).
  • Similarly, Edit | Copy menu item copies highlighted pictures to the clipboard.
  • Edit | Paste item adds pictures (if any) from the clipboard to the current group. Obviously, you can only add new pictures to a group, all duplicates are skipped. If this specified in the program settings, PhoA notifies you of number of pictures actually pasted.
  • The Photo Album is the ultimate parent for all the picture groups, and therefore it is the root node of the group tree. The photo album can hold a text description and it also defines thumbnail parameters - you can change them in Photo album properties dialog, which appears when you select the Edit | Edit... menu item while photo album node is highlighted.
  • A picture group can be renamed also by selecting the Edit | Edit... menu item, but the group node must be highlighted in the tree; alternatively, you can click once on a highlighted group name, or press F2 key. To cancel edit you press Esc key, to confirm new group name - Enter key.
  • To add new group you select the Edit | Add group menu item. The group is created as a child to group currently highlighted. When the photo album node is highlighted the group is created in the photo album's root directory. The default group name is "New group", you change it by editing it and pressing Enter.
  • A group can be deleted by selecting Edit | Delete menu item while folder tree is active.
  • To add pictures to a group you select Edit | Add picture... menu item which invokes Add pictures wizard window.
  • To arrange (sort) pictures the Edit | Sort pictures... menu item brings up Sort pictures dialog.
  • The Edit | Select all highlights all the pictures in the current group.
  • The Edit | Select none removes highlight from all the pictures.
  • To swith to view mode you select the Edit | View menu item or double-click a picture.

View menu

This menu controls program appearance:

  • Whether toolbar is visible (View | Toolbar menu item) and
  • If status bar is visible (View | Status bar). The program saves visibility of these items and restores it next time you run it.
  • After them photo album views menu items follow:
    • Picture groups item swithes group tree to the main display mode, when the left program window shows photo album groups (default selection).
    • New view... menu item brings up Photo album view properties dialog for creating new view.
    • Delete view item removes the currently active view (in the case just view is active, not picture groups).
    • Edit view... item displays Property dialog for editing the currently active view (in the case just view is active, not picture groups).
    • Make a group... item opens Select picture group dialog, allowing you to copy view's exact folder hierarchy to a selected photo album picture group.

Tools menu

Optional tool commands are collected here:

  • The Tools | Program settings... menu item invokes PhoA browse mode settings dialog.
  • The Tools | Statistics... menu item counts and displays various photo album summaries.
  • The Tools | Rebuild thumbnails... menu item brings up Rebuild thumbnails dialog allowing you to recreate thumbnails for selected pictures, for all pictures in the current group or for the whole photo album. This operation is necessary every time you alter thumbanil parameters in the Photo album properties dialog.
  • The Tools | Picture operations... menu item allows you to move, copy, crop and intersect pictures to another group with the Picture operations dialog.
  • One of the most important PhoA features is picture search you invoke selecting Tools | Find.... Refer to this chapter for further information.

Help menu

The menu contains three items:

  • The Help | About... item displays version, copyright, update and contact information.
  • The Help | Help contents item brings up PhoA Help System you are currently watching.
  • The Help | PhoA Website item starts up the default Internet browser and opens the program home site in it.

To the left of the photo album node in the folder tree dropdown-menu button is placed, which brings up view menu.

See also:

Keyboard and mouse controls
View mode
Photo album properties dialog


Working in the browse mode

The most common tasks are discussed in Browse mode menu commands chapter. Here I want to highlight more specific PhoA topics.

Picture data

As was mentioned in the lyrical part, the program stores picture list independently (to be precise, this is the list which elements are links to picture files along with their description, thumbnails etc). The group tree is also stored independently. Every single group holds a set of links to pictures so when you add a file to the group (you work with pictures only by using files), and the file is already used and described somewhere in the photo alubm, then the program automatically finds and fills all the appropriate data; similarly, when you edit any picture data (eg, place or date), these data change in all occurences of the picture file.

It works slightly different when you remove a picture from a group. If the picture being removed is linked by any other photo album group (or groups), only the link to the picture is removed, and the picture itselves remains in the photo album (having other group(s) linked to it); if you once later decide to add the picture file back to a group, PhoA will fill all the data form the picture being found. When you delete a picture that was linked only in the current group, the picture is wiped away completely so if you later add the picture back, you'll have to fill picture data with your own.

Drag'n'Drop

Obviously, a picture cannot be contained twice in a group. The most simple way to copy picture across the groups is to drag them with the mouse from the right pane (thumbnails area) to a group in the tree (in the left pane) when holding Ctrl key. Dragging and then dropping pictures with no Ctrl pressed results in thet pictures move (they are removed from source group and placed into target group). You can drag-and-drop more than one picture at once: you select appropriate pictures before starting the drag operation (using keys Ctrl, Shift and left mouse button) and start dragging with any of selected pictures. After pictures are moved or copied, PhoA informs you of changes made, if it's specified in the program settings (Notifications section).

Additionally, you can drag-ang-drop group folder as well thus rearranging group tree. When you drag a group above free area to the right of the nodes, tree window displays group insertion place being drawn as line, in this case the group is inserted as a sibling of the target node, just above or below it, depending on mouse cursor location (also influences the insertion line shape). When dragging a group upon a node the node becomes highlighted, and the group becomes a child of the target highlighted node. Note: the root directory may contain only photo album node, and ordinary groups cannot be inserted beside it.

Similarly you can copy (but not move) pictures from Search Results tree node into any picture group. It is convenient to arrange pictures by date (eg. by year or by month) after you have arranged it by event in another folder (simply search pictures by date range and copy results to an appropriate group).

Besides this, you can reorder pictures in a group also using drag'n'drop: when you drag selected thumbnails inside the thumbnals window, also insertion line is displayed. When you release mouse button all the selected pictures move to the indicated location right in the sequence they were before. And an alternative method for reordering pictures is sorting them.

Clipboard

PhoA supports clipboard operations. For the moment you can cut, copy and paste only the program's pictures. Data placed to the clipboard contain all the picture data except their group belongings. This allows moving (or copying) pictures to another group or even another photo album.

There is a limitation regarding inserting pistures to another photo album: the data of existing pictures (being already registered in the photo album with the same picture file name) do not become overwritten with the new ones; ie, let's say, when you paste a picture linked to file C:\Photos\winter-vacation-1812.jpg to the photo album already containing this file, then the picture will only be added to the current group (if it's not there yet). In the case the picture being pasted is already contained in the target group, this picture is simply being skipped. On paste operation completed the program notifies you about the number of pictures actually pasted from the clipboard (is controlled with program settings - Notifications section).

Undo system

By contrast with many similar products, PhoA implements fully-function undo system, allowing you to roll back any operations that has modified the photo album (the only exception is Rebuild thumbnails operation), and also the series of operations - by selecting Edit | Undo or Edit | Undo history menu items respectively. When you select an item from the undo history list all the prior (ie located above in the list) operations are also being undone.

Number of operations you may roll back is specified in the Browse mode program settings. The default value is 32.

Views

Views are an unique technology of automated picture grouping. Refer to Working with views section for details.

See also:

Keyboard and mouse controls
View mode
Working in the view mode


Working with views

Introduction

Photo album views look similar to photo album group tree, the only difference is that groups are being created by you while view's folder hierarchy is built automatically based on picture data as well as on groupings you provide. A grouping is one logical unit of view's organzation, and it may form one or more folder tree levels. When generating view's folder hierarchy, each picture is arranged into some group, which is determined by the view properties to be seen below.

View properties

As you can see in View properties dialog, the view has name, the list of groupings and the list of sortings.

View name

The name is specified by you, and it reflects the view's content, eg, "By place and date".

List of groupings

The grouping list is to be seen more detailed. PhoA supports the following grouping kinds:

  • By picture file path
    Pictures are arranged into folders according to their physical locations
  • By date year
    Pictures are grouped into folders, each of which contains pictures with the same year. This grouping supports arranging unclassified pictures into separate folder
  • By date month
    Pictures are grouped into folders, each of which contains pictures with the same month. Usually it is worth to apply this grouping after the grouping by date year, in this case you'll have year folders containing folders for months of that year; but you may apply this grouping alone, this way pictures will be grouped by the month, but still with different years. This grouping supports arranging unclassified pictures into separate folder
  • By date day
    Pictures are grouped into folders, each of which contains pictures with the same day of the month. Usually it is worth to apply this grouping after the groupings by date year and by date month, in this case you'll have year folders containing folders for months of that year, and they in turn will contain folders for days of that month; but you may apply this grouping alone, this way pictures will be grouped by day of the month, but still with different years and months. This grouping supports arranging unclassified pictures into separate folder
  • By time hour
    Pictures are grouped into folders, each of which contains pictures with the same hour (taken from picture's time). This grouping supports arranging unclassified pictures into separate folder
  • By time minute
    Pictures are grouped into folders, each of which contains pictures with the same minute (taken from picture's time). Usually it is worth to apply this grouping after the grouping by time hour, in this case you'll have year folders containing folders for minutes of that hour; but you may apply this grouping alone, this way pictures will be grouped by the minute, but still with different hours. This grouping supports arranging unclassified pictures into separate folder
  • By place
    Pictures are arranged into folders by their place. This grouping supports arranging unclassified pictures into separate folder
  • By film number
    Pictures are arranged into folders by their film number. This grouping supports arranging unclassified pictures into separate folder
  • By author
    Pictures are arranged into folders by their author. This grouping supports arranging unclassified pictures into separate folder
  • By media name or code
    Pictures are arranged into folders by their media. This grouping supports arranging unclassified pictures into separate folder
  • By keywords
    Pictures are arranged into folders by their keywords. Accordingly, one picture may participate in some folders, and it'll do if it contains some keywords. This grouping supports arranging unclassified pictures into separate folder

List of sortings

After pictures are arranged into folders they reside there, as rule, in random order, and that's inconvenient; moreover, you cannot reorder them manually. To fix this there's a possibility in PhoA to sort grouping results in each group with use of sortings. You do this just like when you sort pictures in the photo album.

Arranging unclassified pictures into separate folder

As you know, this is not mandatory to completely describe a picture. But since when generating a view each picture is processed and is included into the view (see above), there are two choices how to handle pictures having no data for the given grouping criteria (no date when grouping by date, no place when grouping by place etc):

  • If the grouping has "Unclassified pictures in own folder" checkbox checked, they will be put into the appropriate folder ("No date", "No place" etc) located at the same tree level as the rest of folders, and just at the top of the level.
  • If the checkbox is unchecked, pictures with no data will be leaved in the former folder, and no additional folder is created for them. So, given the grouping by date (checkbox is unchecked), the picture remains in the root folder (the folder corresponding to the view itself), and if you then apply the grouping by place (checkbox is checked), the "No place" folder will reside in the root directory, and the picture will be placed there, while the rest of folders (with place specified) will be created under the date folders; thus picture classification by place will reside on different folder tree levels.

This feature (obvious) is not applicable with grouping by picture file path since there are no pictures with no files, and there are no files without paths (at least I've heard nothing of it ;).

Copying view's folders to the photo album

PhoA also introduces the possibility for copying generated folder and picture structure as ordinary photo album groups. For this you select View | Views | Make a group... menu item, then Select a group dialog appears, allowing you to select a group to place view's folders to.

See also:

View properties dialog
Browse mode
Working in the browse mode
Keyboard and mouse controls
Working in the view mode


Autofilling the picture properties

PhoA is capable for automated filling some picture properties. At the moment there are the following autofill possibilities:
Property Autofill possibility
Date
  • From the Original date & time EXIF tag
  • From the Dititized date & time EXIF tag
  • From the Date & time EXIF tag
  • Extraction from the picture file name - if it has yyyy-mm-dd hh-mm-ss.* format
  • From file creation date/time
  • From file modification date/time
Time
  • From the Original date & time EXIF tag
  • From the Dititized date & time EXIF tag
  • From the Date & time EXIF tag
  • Extraction from the picture file name - if it has yyyy-mm-dd hh-mm-ss.* format
  • From file creation date/time
  • From file modification date/time

The program will try to fill a particular picture property, iterating through items enabled in dialog settings in the order they are listed. If a property was filled successfully the program stops iterating.

Moreover Overwrite if already specified option also affects autofill.

See also:

Program settings :: Dialogs
Picture data
Metadata
Viewing the metadata


View mode

This mode allows you to view singe pictures one by one - in the separate window or in fullscreen mode. And this is generally what you create photo album for.

In the view mode you can do the following:

  • scale (zoom in and out) picture;
  • scale picture to best fit the window;
  • cancel scaling (view picture in its actual size);
  • scroll picture with mouse or keyboard in case it doesn't fit the window;
  • advance to next, previous, the first or the last picture in the current group;
  • switch between window and fullscreen viewing mode;
  • reload (re-read) picture file;
  • edit current picture;
  • turning on and off slideshow mode;
  • open program preferences.

These function are available through toolbar buttons, by context menu that appears when you right-click the window, or by keyboard and mouse controls.

See also:

Working in the view mode
Program settings :: View mode
Browse mode


Working in the view mode

The behaviour of the program is completely determined by view mode settings. Some parameters you can also override in the current viewing session. Eg, you can switch between window and fullscreen mode by pressing the F key or with clicking by middle mouse button. In window mode settings specify whether picture is scaled (zoomed in) in case it is smaller than the window, or is it shrinked when it is larger than the window; whether viewing windows is alaways on top of other windows; for both modes you can specify window background color.

Moreover, PhoA is able to display picture information when viewing it (else what is it for?).

You can zoom the picture being viewed in and out with mouse wheel (keeping Ctrl depressed) or with +, -, *, / keys on the numeric keypad. If picture is larger than the viewing window it can be scrolled by dragging it with mouse or with arrow keys (also in conjunction with Ctrl and Shift keys). To learn more on using keyboard and mouse in the view mode refer to this chapter.

NB: Maximum scaling factor for this version of PhoA is 8.


Photo Album properties dialog

This dialog allows you to define photo album thumbnails' parameters - their dimensions (width and height in pixels) and quality. Default thumbnail dimensions are 150x150 pixels, quality is 40% max. The greater thumbnail dimensions and the higher quality mean the greater photo album file (*.phoa) size, and vice versa. Too low thumnail quality may make it difficult to recognize picture it represents (colors appear distorted).

You can also enter photo album text description here; the description is stored along with the photo album.

NB: Description length is not limited but it's not recommended to make descriptions over 80 printed pages in length because they are difficult to read.

This operation supports undo

See also:

Browse mode
Settings :: Browse mode


Add pictures wizard

This wizard is to add pictures to the group currently selected (including the root one, ie the photo album itself). If the group is not selected, the add function is disabled.

Page 1. Files and folders selection

Adding pictures starts with selecting the picture files and/or folders containing picture files.

Files/folders list

You select some items you wish using the keyboard or mouse with Shift or Ctrl keys.

Recurse subfolders

If there are folders selected in the tree, then having this checkbox turned on you add files not only from that folders, but also from all the nested folders.

Advanced

Displays or hides the File selection filter panel, allowing you to narrow file selection by certain criteria (see below).

Photo album presence

Allows you to filter picture files on their presence in the photo album:

  • Disregard - the filter is ignored.
  • Only files which are absent at the photo album - only files will be added which are not yet in the common photo album picture list.
  • Only files which are present at the photo album - only files will be added which are already contained in the photo album.

File masks

A filter restricting files being added by their name and/or extension. The mask is built as usual: ? character replaces any character and * replaces arbitrary number of any characters; moreover you can specify character ranges in the square brackets like you do for search.

You can specify more than one mask by delimiting them with semicolon. In this case a file matches if it matches any mask.

File modified time

You can specify limits of date and/or time file modified. This way you can eg select files have been saved before or after a particular date. Empty field means filter is inactive.

Page 2. Checking the files

At this page you may opt which files are to be added among ones selected at the previos page by check or uncheck them. By default, all files are checked.

Check can be toggled by mouse or with Space key (in this case checks are inverted for all the highlighted files). Popup menu (invoked by the right mouse click) provides additional options.

NB: This page is displayed provided the default options are used. You may want to disable displaying this page in the dialog settings, then the page will be skipped, and after files/folders selection page the picture adding process will start immediately.

Page 3. Adding pictures

This page is displayed while adding the selected picture files. The program shows picture addition progress and the number of errors occured. You can watch those errors (as long as pictures added successfully) afterwards on the log page.

Moreover the thumbnail created for the picture last added is displayed.

NB:
  • Picture additiong is performed by a parallel thread; you can interrupt the process only between two pictures being processing, and this slightly slows down the program's response on clicking Interrupt button.
  • Moreover, you cannot close the wizard window having active picture addition process. You will need to interrupt it using the Interrupt button before you can close the window.
  • Picture addition process performs autofilling the picture data. You can setup the autofill feature in the dialog settings; autofill results can be watched at the log page.

Interrupt

By clicking this button you stop the addition process. The button becomes Continue, and by clicking it you resume the process.

On process completion the program closes wizard window (only when no errors occured and settings specify not to show the log when no errors), or advances to the log page.

Page 4. Log of the addition

The log displays all the operations performed to the picture files, in sequence. Each file (from selected ones) may be marked either as succeeded, or as failed, the latter case the error encountered message appears next to the file name. In the former case the autofill results described.

Display errors only

When turned on the log shows only failed entries, otherwise succeeded entries are also shown. The option is convenient when you need to find some error among a large number of added files.

Save to file...

Allows you to write the log to a plain text file.

NB:
  • When saving the log all entries are always written, disregarding the Display errors only checkbox.
  • Failed entries are marked with symbols [!] in the file, while succeeded ones have [+] at the beginning. This allows to easy find errors in the log file.

You can watch the log before all files are added by interrupting the addition process and then clicking then Next button. Afterwards you can go back (by clicking Back) and then resume the process.

This operation supports undo

See also:

Browse mode
Working in the browse mode


Edit pictures dialog

This dialog is intended for modifying selected pictures. To display it, select one or more thumbnails and click Edit | Edit... menu item or press Alt+Enter keys provided the thumbnail pane is focused.

The window contains several pages switched by the toolbar at its left edge, or by pressing Ctrl+Digit keys:
Page | Shortcut | Purpose
File properties | Ctrl+1 | Viewing general picture files properties
Metadata | Ctrl+2 | Viewing metadata contained in the picture files
View | Ctrl+3 | Viewing the pictures themselves at selected scale
Data | Ctrl+4 | Viewing or editing the picture data
Keywords | Ctrl+5 | Viewing or editing the picture keywords
Groups | Ctrl+6 | Determining or changing the pictures' belongings to the groups

This operation supports undo

See also:

Browse mode Working in the browse mode


Edit pictures dialog :: File properties

The page displays file list of pictures that are selected. If you expand the file name you can see that file's properties (type, size, creation, modification and accessed time etc).

By clicking the right mouse button you can invoke standard Explorer context menu for a file.

NB: You may opt to expand all the properties in dialog settings.

See also:

Browse mode
Working in the browse mode


Edit pictures dialog :: Metadata

This page displays metadata contained in picture files. Metadata are arranged as tree, you can view them by expanding a file name.

If there are no metadata in the file, the corresponding message appears to the right of its name.

The bottom panel, Description, displays additional information for the selected metatag. This panel is visible by default, but can be closed by clicking the X button on it. To display the panel again, select the corresponding item from the context menu.

NB:
  • You may opt to expand all the metadata in dialog settings.
  • Metadata may be used for autofilling the picture properties when adding pictures to the photo album. This is adjusted also in dialog settings.

See also:

Metadata
Browse mode
Working in the browse mode
Autofilling the picture properties


Edit pictures dialog :: View

Here you can view any of the selected picture at the selected scale. Picture file (if there are more than one picture selected) is chosen from the dropdown list.

Zoom in

Enlarges picture for value denoted in View settings.

Zoom out

Shrinks picture for value denoted in View settings.

Zoom actual

Set the scale to 1:1.

Fit window

Scales picture so that it fits the window. This is the default.

NB: these command are also available from the popup menu appearing on right mouse click.

Picture panning (in the case the picture is larger than the window) is performed by dragging it with the mouse. Moreover, you can use mouse wheel to zzom the picture.

NB: To speed up picture displaying always Nearest neighbor is used for resampling.

See also:

Browse mode
Working in the browse mode


Edit pictures dialog :: Data

Picture data

This dialog page allows you to edit the most of editable picture data:

  • Date - picture date. Date format is determined from Windows' regional settings. If there are no data about picture date the field remains empty.
  • Time - Picture time. If there no data about picture time leave the field empty.
  • Place - place of picture events. Dropdown list displays all previously entered values.
  • Film nuber or name - number that the film being assigned while processing, or name given to it by you. Dropdown list displays all previously entered values.
  • Frame number - no comments.
  • Author - author's or photographer's name. Dropdown list displays all previously entered values.
  • Description - brief picture description suitable for displaying while viewing.
  • Notes - all data not suitable for other fields.
  • Media name or code - picture file media name (eg CD-ROM number). Dropdown list displays all previously entered values.

More detailed info on picture data is here.

A number of pictures at once

PhoA supports editing picture data for any number of pictures simultaneously. For this page the following simple scheme used:

  • If some property is the same across all the selected pictures, then the corresponding entry field will be of white color (or of window color to be precise).
  • If a property's values differ between selected pictures, the corresponding field will be of gray color (or of 3D-objects' color). If you change this field's data the property will be synced for all selected pictures, and the field will become white. Otherwise the property values will remain unchanged (and different, respectively).

You may search pictures by these data afterwards.

This operation supports undo

See also:

Picture data
Autofilling the picture properties
Browse mode Working in the browse mode


Edit pictures dialog :: Keywords

Each picture maintains a keywords list among its data. As a rule this is a list of persons, subject or events on a photograph.

The advantage of keywords compared to plain text is that you dont have to type them - they can be selected from the list. Moreover, you may want to build a view on them, and watch the line changing year to year (by the way, a highly interesting observation). And finally, the keyword list shows number of images a particular keyword linked to.

Keyword list

This list displays all the keywords encountered in open photo album pictures. Grayed text in the parentheses right to the keyword is a total number of the keyword occurences.

If a keyword is contained in some of the selected pictures the keyword will be checked (fully checked if the keyword is present at all of the selected pictures, and grayed, depending on checkbox style, if the keyword is contained not in all selected pictures), and there will be two numbers in the parens delimited with slash: first one is the number of selected pictures used the keyword, second is a total number of occurences.

If a keyword is contained in none of the selected pictures, the checkbox will remain unchecked.

As long as keywords are compared case-insensitively, the program makes do distinction between qwerty and QwErTy.

You can also add keywords here. For you to distinct between existing and new keywords they are painted differently:

  • Already existing keywords wear a key icon and are drawn using black font.
  • Newly added keywords have an asterisk icon and are drawn with navy font.

Keyword operations

Using this page you may freely alter the keyword list for the selected pictures by using the tool panel buttons.

NB: the same operations are accessible through the popup menu appearing on right mouse click.

Checked only

When on (the button appears depressed), the list displays only checked keywords, otherwise the whole keyword list is displayed. This switch affects only keyword visibility, and doesn't modify the keyword list itself.

Add

Adds a new keyword to the list, checks it and starts editing it. If you decide not to remove the check when you click OK the keyword will be added to all the selected pictures.

Edit

Enters keyword editing mode. Notes:

  • The keyword will be replaced only for selected pictures already having it.
  • If a keyword is contained by none of the selected pictures (the were no keyword checkmark) then the keyword will remain unchanged.
  • If a keyword becomes checked then new keyword will be added to all of the selected pictures not contained old one before.
  • If a keyword becomes unchecked then old keyword will be simply removed from selected pictures containing it.
NB: you can also start keyword editing by clicking with mouse on already selected keyword.

Check all

Checks all the keywords in the list.

Uncheck all

Unchecks all the keywords.

Invert

Toggles checks for all the keywords.

NB: Where is Delete button? There's no Delete button by design: if you want to delete a keyword from the pictures, simply uncheck it.

This operation supports undo

See also:

Picture data
Browse mode
Working in the browse mode


Edit pictures dialog :: Groups

At this page you can graphically view groups that pictures belong to. Moreover you can easily add or remove multiple pictures to or from the multiple groups.

Similarly to keywords changes are being made by toggling the entries' checkboxes, and numbers in parentheses also have the similar meaning: one number means number of pictures in the group; if two numbers are divided by slash then the first is the number of selected pictures in this group, and the second is the total number of pictures in it.

Checkbox also acts like for keywords: if no one of the selected pictures is contained in a group, the the checkbox appears clear. If some of the selected pictures are contained, and the rest are not, the checkbox will be grayed. And if all of the selected pictures are in the group, then the checkmox will be checked.

Feel free to develop this on your own.

NB: you cannot check pictures so that some pictures are completely out of groups - this might requre to delete these pictures, but picture deletion is just different operation. Thus PhoA disables such operation notifying you of the situation.

This operation supports undo

See also:

Browse mode
Working in the browse mode


Sort pictures dialog

This function allows you to reorder pictures in the current group, or in all photo album groups based on their data.

If there's no current group, you may only sort the whole photo album.

Sort criteria list

Sort order is determined by sort criteria, number of criteria may be arbitrary.

Each criterion represents a picture property and a sort direction (ascending / descending). Criteria are being added automatically when you select a property to sort by.

To display property list you click a dropdown-button in the first column or Space key when the first column has focus.

To toggle sort direction you click direction indicator with mouse or press Space key when the second column has focus.

You also can reorder items in the list by dragging them with the mouse or using keys Ctrl+Up and Ctrl+Down.

Reset

Reverts all sort criteria to their defaults.

This operation supports undo

See also:

Browse mode
Working on the browse mode


Rebuild thumbnails dialog

Thumbnails must be rebuilt every time you alter their parameters (those defined in photo album properties): dimensions and/or quality. In such case it is necessary to recreate new thumbnails that are appropriate for new settings. Also this function is useful when source picture files change.

Rebuild thumbnails function allows you to select one of the following modes:

  • for all selected pictures - thumbnails are rebuilt only for pictures being highlighted in the right pane of PhoA window;
  • for all pictures in the current group - thumbnails are rebuilt for pictures that are in the group highlighted in the PhoA group tree;
  • for all photo album pictures - all thumbnails are rebuilt.

During picture processing PhoA displays progress indicator as well as file name of picture being processed; you can interrupt rebuilding at any moment.

See also:

Add pictures wizard
Edit pictures dialog


Picture operations dialog

Operations dialog allows you to perform advanced processing on pictures and one of the photo album picture groups (except current). The operations are:

  • Move selected pictures to highlighted group (the same as dragging pictures into this group);
  • Add (copy) selected pictures to highlighted group (the same as dragging pictures into this group holding Ctrl depressed);
  • Delete selected pictures from highlighted group (excluding; the group will contain all pictures but identical to selected ones);
  • Intersect selected pictures with pictures in highlighted group (the group will contain only pictures identical to selected ones).

The function allows to perform various tasks when arranging photo album contents (eg, you may wish to remove repeated pictures from other group or to copy some pictures from one group to another).

This operation supports undo

See also:

Keyboard and mouse controls
Working in browse mode


Photo album statistics

This function calculates and displays summary information on the photo album, its groups and its pictures, and displays it.

Basic photo album statistics items are:
Name | Description
Photo album file | Photo album file properties are presented similar to picture file properties. Moreover, here you can find Photo album file revision item, displaying version of file loaded.
Number of distinct pictures | Number of distinct pictures in the photo album.
Number of nested groups | Number of groups in the photo album.
Number of pictures in th group | Number of pictures explicitly owned by the photo album (the root node of group tree).
Total number of pictures | Total number of links to the pictures (not needed to be distinct) in the photo album group and all nested groups.
Total number of distinct pictures | Total number of links to distinct pictures in the photo album group and all nested groups.
Total picture files size | Sum of file sizes of pictures in the photo album group and all nested groups.
Average picture file size | Average picture file size from pictures in the photo album group and all nested groups.
Total thumbnails size | Sum of data sizes of picture thumbnails from pictures in the photo album group and all nested groups.
Average thumbnail size | Average thumbnail data size from pictures in the photo album group and all nested groups.
Largest picture file | Name of the picture file having the grestest size from pictures in the photo album group and all nested groups.
Size of the largest file | Size of the file from the previous item.
Smallest picture file | Name of the picture file having the least size from pictures in the photo album group and all nested groups.
Size of the smallest file | Size of the file from the previous item.

If there is a picture group selected in the tree then there follows all items listed above (except file name and number of pictures in the photo album) relative to this group.

See also:

Browse mode
Working in the browse mode


Find pictures dialog

PhoA has a powerful tool for searching pictures. To display Find pictures dialog you select Tools | Find... menu item or press F3 key in the Browse mode.

Search criteria list

You enter search criteria in the table with the following data:

  • Picture property - one of the searchable item from picture data, for which the criterion is intended.
  • Criterion condition - one of comparison conditions, list of possible values depends on property data type.
  • Criterion value - a value to compare picture property with.

Use arrow keys no navigate through the table. To expand the dropdown list use Alt+Down keys.

Criterion values may be selected from the dropdown history list.

Find

Starts picture searching.

Pictures found in search operation (if there are any) fill the Search Results folder that is displayed in the root of the group tree. The Search Results folder implements the same functionality as regular picture group folders except that you cannot add or remove its pictures.

Reset

Clears all input fields and reverts all values to their defaults.

Picture properties data types

According to the picture data table, PhoA uses the following data types for property values:
Data type | Description & criteria
Integer or Ordinal | An integer value can be compared for equality, inequality etc.
Filename string | Data may be tested for mask matching. The mask is written by ordinary OS rules: ? - any character, * - arbitrary number of any characters; moreover, you can specify symbol ranges in square brackets, eg, [A-Z].
String | Any literal. Searching string or substring is implemented, case insensitive.
Pixel format | Not a searchable type.
Date | Criteria are similar to number ones.
Time | Criteria are similar to number ones.
String list | It is a list of keywords. Keywords may be entered manually or by clicking "..." button in the entry field from the list.

The program select those pictures that conform to all search conditions at once (ie, the AND operator is in effect here).

To disable a criterion simply delete its value.

See also:

Picture data
Working in the browse mode
Keyboard and mouse controls
Add pictures wizard
Edit pictures dialog


Select keywords dialog

You enter this dialog by clicking on the keyword list button in the Find pictures. The program displays the complete list of keywords used in the photo album - sorted in ascending order.

You select ones you wish to search with.

Reset

Clears all keyword checkmarks.

NB: if a keyword contains spaces or commas it becomes double-quoted because these characters are delimiters.

See also:

Find pictures dialog
Picture keywords
Picture data


View properties dialog

This dialog is for adding or editing view properties.

The name is served to learn view's purpose; the grouping list and sorting list determine view arranging algorithm.

For details refer to this section.

see also:

Working in the browse mode


Select photo album group dialog (for view)

This window is used for specifying the group to place view's folder hierarchy to.

The whole folder and picture structure will be copied in the specified photo album group (it also may be the photo album itself). After this, you can arrange and tweak the groups and pictures as you use to.

See also:

Working with views
Working in the browse mode


Keyboard and mouse controls

It is possible in PhoA to perform almost any operation by a number of ways: selecting an item in the main menu, clicking a toolbar button (only in the browse mode), by pressing a keyboard shortcut, selecting an item from popup menu, or, finally, with the mouse. Below are keyboard shortcuts and mouse control for two major modes: in browse mode, and in view mode.

Browse mode

Keyboard

Shortcut | Action | Description
Ctrl+N | Create new photo album | Erases all photo album info as well as groups and pictures.
Ctrl+O | Open photo album file | Invokes photo album file-open dialog, loads photo album for processing or viewing.
Ctrl+S | Save photo album file | Stores photo album file currently open to the disk.
F12 | Save photo album to another file | Brings up photo album file-save dialog, writes the photo album to the file selected and makes file the current one.
Alt+Ins | Create gorup | Creates new group as a child to the group currently highlited, assigns it the default name and starts editing the name.
Ins | Add picture(s) | Brings up Add pictures wizard (pictures are added to the current group).
Del | Delete | Removes group or pictures currently highlighted after confirmation (depends on current selection).
Ctrl+Z, Alt+Backspace | Undo | Rolls back the last change you have done to the photo album.
Ctrl+X, Shift+Del | Cut | Cuts pictures currently highlighted into the clipboard (pictures cut you can add later to another group).
Ctrl+C, Ctrl+Ins | Copy | Copies pictures currently highlighted to the clipboard (pictures copied you can add later to another group).
Ctrl+V, Shift+Ins | Paste | Adds pictures from the clipboard to the current group (only if clipboard contains valid pictures placed there by PhoA).
Alt+Enter | Edit | Invokes Photo album properties dialog, Edit picture(s) dialog, or enters current group name editing mode (depends on current selection).
Ctrl+F3 | Sort pictures | Brings up Sort pictures dialog.
Ctrl+A | Select all | Highlights all pictures in the current group.
Ctrl+D | Select none | Removes highlight from all pictures in the current group.
Ctrl+Enter | View | Enters view mode at the current picture.
F4 | Program preferences | Displays Program preferences dialog.
F8 | Statistics | Calculates and displays photo album statistics.
Ctrl+R | Rebuild thumbnails | Opens Rebuild thumbnails dialog.
Ctrl+F2 | Picture operations | Brings up Picture operations dialog.
F3 | Find | Aloows you to find pictures.
Ctrl+F1 | About | Displays version, copyright and PhoA home site info.
F1 | Help contents | Runs PhoA Help System.
Arrow keys | Move selection | Moves highlight along group tree or in picture list (depends on which pane is active).
Home, Ctrl+Page Up | First element | Moves selection to the first group/picture (depends on which pane is active).
End, Ctrl+Page Down | Last element | Moves selection to the last group/picture (depends on which pane is active).
Page Up | Previous page | Scrolls one screen up.
Page Down | Next page | Scrolls one screen down.
Shift+Arrow keys | Picture range selection | Selects picture sequence (starting at previous and ending at next highlighted).
Shift+Home, Shift+Ctrl+Page Up | Select to begin | Selects pictures from current through first.
Shift+End, Shift+Ctrl+Page Down | Select to end | Selects pictures from current through last.
Shift+Page Up | Select page up | Selects pictures from current through one one screen up.
Shift+Page Down | Select page down | Selects pictures from current through one one screen down.
Ctrl+G | Picture groups | Display photo album group tree (when a view is displayed).
Shift+Alt+Ins | New view | Invokes Add view dialog.
Shift+Alt+Del | Delete view | Removes current view from the photoa lbum.
Shift+Alt+Enter | Edit view | Opens View properties dialog.
Shift+Alt+G | Make a group | Opens Select a group dialog to place view's holders to.

Mouse

Shortcut | Action | Description
Wheel | Scroll | Scrolls group tree or picture list (depends on which pane is active).
Left button click | Single selection | Selects single group or single picturte (depends on which pane is active).
Right button click | Context menu | Invokes context menu.
Ctrl+Left button click | Multi-select pictures | Selects or unselects single picture.
Shift+Left button click | Select picture range | Selects pictures in sequence (from highlighted to one being clicked).
Drag with left button pressed in area aside pictures, Alt+Drag with left button pressed | Rectangular selection | Draws rectangular picture selection box.
Shift+Alt+Drag with left button | Add rectangular selection | Unions current selection with rectangular selection box.
Drag selected pictures with left button to a group | Move pictures | Moves selected pictures from current group to target one. Displays message of number of pictures actually moved.
Ctrl+Drag selected pictures with left button to a group | Copy pictures | Copies selected pictures from curent group to another one. Displays message of number of pictures actually copied.
Double click on a group tree node | Collapse/Expand | Collapses or expands tree node.
Double click on a picture | View mode | Enters view mode at the current picture.

View mode

Keyboard

Shortcut | Action | Description
Page Down, Space | Next picture | Advances to the next picture.
Page Up, BackSpace | Previous picture | Reverts to the previous picture.
Home | First picture | Jumps to the first picture in the group.
End | Last picture | Jumps to the last picture in the group.
+ (numeric keypad) | Zoom in | Enlarges picture by value defined in View mode settings dialog.
- (numeric keypad) | Zoom out | Scales picture down by value defined in View mode settings dialog.
* (numeric keypad) | Zoom best fit | Scales the picture to best fit the viewing window.
/ (numeric keypad) | Zoom actual size | Displays picture at its actual size (so that one picture pixel corresponds to one screen pixel).
Alt+Enter | Edit | Opens Edit picture dialog for picture currently displayed.
Pause | Toggle Slide Show mode | Activates or deactivates automatic timed Slide Show mode. Slide Show parameters are set up in View mode settings dialog.
F | Toggle fullscreen / window mode | Switches between fullscreen and window mode.
F5 | Refresh picture | Reloads current picture from file.
F4 | Program preferences | Displays Program preferences dialog.
F1 | Help | Displays view mode help.
Enter, Esc | Finish viewing | Returns to the browse mode.
Arrow keys | Scroll picture | Scrolls picture in the given direction (in case it doesn't fit the window).
Shift+Arrow keys | Accurately scroll picture | Slowly scrolls picture in the given direction (in case it doesn't fit the window).
Ctrl+Arrow keys | Quickly scroll picture | Quickly scrolls picture in the given direction (in case it doesn't fit the window).
Ctrl+I | Info bar relocation | Displays resizing handles around info-string allowing you to resize or move it. Pressing it twice or mouse click outside the bar finishes this mode.

Mouse

Shortcut | Action | Description
Wheel down | Next picture | Advances to the next picture.
Wheel up | Previous picture | Reverts to the previous picture.
Middle button click, Wheel click | Toggle fullscreen / window mode | Switches between fullscreen and window mode.
Right button click | Context menu | Invokes context menu.
Ctrl+Wheel up | Zoom in | Enlarges picture by value defined in View mode settings dialog.
Ctrl+Wheel down | Zoom out | Scales picture down by value defined in View mode settings dialog.
Dragging with left button pressed | Scroll picture | Scrolls picture in the given direction (in case it doesn't fit the window).


Program settings :: General

User interface

Interface language

Common program interface language, Russian or English at the moment.

Main program font

Base font used for all PhoA windows.

Tooltip display length

Time to display tooltips in milliseconds.

Recent open files list count

Number of files being remembered in the File menu and Open... toolbutton dropdown list.

Toolbars

Main toolbar button size

Determines size of the main toolbar buttons.

Toolbar dragging style

Determines mode of toolbar dragging and docking

Trees/ists

Animated expanding/collapsing

If on, expand and collapse operations appear animated.

Panning using mouse wheel click

If on, the mouse wheel click enters autopanning mode.

Center selection in view

If on, the program will try to center the selected item in the list window.

Incremental search on typing

If on, the selection in lists automatically advances to a node when you type its text.

Incremental search cleanup delay

Specifies the time, in milliseconds, during which the sequential keypresses are assumed to be one cycle of incremental search.

Collapse/expand button style

Allows you to choose style of tree buttons (only on non-WindowsXP-systems).

Node checkboxes style

Allows you to choose kind of check images (only on non-WindowsXP-systems).

Multiple selection rectangle style

Allows you to choose style of multiselection rectangle used in lists (only on non-WindowsXP-systems).

See also:

Program settings :: Browse mode
Program settings :: View mode
Program settings :: Dialogs


Program settings :: Browse mode

Thumbnail view window

Background color

Determines the thumbnail pave background color.

Drag'n'Drop

Enables or disables drag'n'drop operations with the thumbnails.

Show thumbnail tooltips

This function enables pop-up tooltips for thumbnails when mouse stays still over a thumbnail for a time. These tooltips display picture properties (see below). Being generally useful, this function is sometimes irritating someone.

Display in tooltips

The list of properties from which you can choose those to display in thumbnail tooltips.

Picture details displayed on the thumbnails

By using these options you can select whether to display, and which picture properties in each thumbnail corner.

Thick thumbnail border

When enabled, thumbnail boundaries are drawn more plain.

Cache thumbnails while viewing

Since thumbnails are stored in the JPEG format, they must be decoded to be drawn, and it may take sensible time to repaint them each time they need to (particularly when displaying many thumbnails at one time while PC is not so powerful). To amend this caching function enables storing decode thumbnails in the special cache (after they had been painted once). Although it takes a bit more memory.

Thumbnail cache size

Maximum number of thumbnails in the cache.

Resampling filter

Determines interpolation filter used for resampling source images when creating thumbnails.

Max. undo count

Determines size of undo buffer used to roll back changes done to the photo album. You can undo no more than specified number of sequential changes (when undo buffer gets full, the least recent changes' data are erased). Large buffer requested may result in large need of room (memory) to store it (the most memory-consuming operations are picture deleting and editing).

See also:

Program settings :: General
Program settings :: View mode
Program settings :: Dialogs


Program settings :: View mode

View window always on top

Does not allow the window to fall behind other windows when it's inactive. Affects only the window mode.

Fullscreen mode

When entering view mode the program will set up the fullscreen mode when all other screen elements are hidden (including the Taskbar). This can be overriden with F ley or by clicking middle mouse button.

Hide mouse cursor in fullscreen

When entering fullscreen mode the program will turn off mouse pointer.

Window background color

Determines color for filling viewing window background. The default is black.

Show toolbar

Enables or disables view mode toolbar.

Picture advancing

Fit window to image

Resizes window so that it fits the picture (considering current scale). Affects only the window mode.

Center window on the desktop

Places viewing window in the center of the desktop. Affects only the window mode.

Shrink image to fit

If a picture is larger than the viewing window, it will be proportionally reduced (to fit the window).

Zoom image to fit

If a picture is smaller than the viewing window, it will be proportionally enlarged (to fit the window).

Cyclic viewing

If on, the viewing sequence wraps around.

Predecode next picture in advance

This option enables background picture decoding thus allowing quick advancing to the next picture (next picture is being decoded while viewing current one). This mode requires more memory for storing predecoded image data.

Cache behind viewed pictures

If this option is enabled, last viewed picture is not removed from the memory thus allowing you to quckly revert to previous picture. This mode requires more memory for storing cached image data.

Scale by

Determines the one step of scaling change (with + and - keys on numeric keypad or with mouse wheel when Ctrl depressed).

Display in window caption

Allows you to choose which picture properties to display in the window caption bar.

Picture resampling filter

Determines interpolation filter used for resampling (scaling) source images when viewing them.

View info

Picture properties

Specifies which picture properties will be shown in the view mode.

Font

Determines which font will be used for drawing the picture info in view mode.

Background color

Specifies the color of information bar background. See the next option.

Background opacity

Value ranging from 0 (transparent, ie nonexistent background) to 255 (opaque). Allows to adjust the translucence of information bar background.

Slide show

Display time

Determines time intervals (in milliseconds) between picture changes in Slide Show mode (this mode is activated by pressing Pause key in the view mode, with the toolbutton or by context menu).

Cyclic

When on, PhoA automatically rewinds to the first picture in the group after showing the last in Slide Show mode, else Slide Show is deactivated once the last picture is reached.

See also:

Program settings :: General
Program settings :: Browse mode
Program settings :: Dialogs


Program settings :: Dialogs

Confirmations

Before group deletion

If on, the program confirms before a group is deleted.

Before picture deletion

If on, the program confirms before selected pictures are deleted.

Before view deletion

If on, the program confirms before a view is deleted.

Before saving file of an older version

If on, when saving file of a version older than the current, the program warns you about possible data loss.

Before exit (when photo album is not modified)

If on, the program confirms before exiting even if the photo album isn't modified (if photo album is modified the program always confirms).

Notifications

After copying pictures using Drag'n'Drop

If on, after copying pictures the program notifies you about number of pictures actually copied.

After moving pictures using Drag'n'Drop

If on, after copying pictures the program notifies you about number of pictures actually moved.

After pasting pictures from the clipboard

If on, after pasting pictures the program notifies you about number of pictures actually pasted.

Add pictures wizard

Always skip 'Check files' page

If on, after selecting files/folder in the Add pictures wizard PhoA start picture addition immediately.

Show log page only if errors occured

If on, addition log will be displayed only if there were errors, otherwise the wizard window will close right after addition process is finished. If off, the log will be displayed each time upon completion.

Automatically fill picture date from:

Adjusts properties from which to autofill picture date for pictures being added.

Overwrite date if already specified

Tells the program to autofill picture date (overwrite date) even if the date is already entered.

Automatically fill picture time from:

Adjusts properties from which to autofill picture time for pictures being added.

Overwrite time if already specified

Tells the program to autofill picture time (overwrite time) even if the time is already entered.

Picture properties dialog

Expand file properties on display

If on, the file properties on the property page fully expand when displayed.

Expand image metadata on display

If on, the image metadata on the metadata page fully expand when displayed.

See also:

Program settings :: General
Program settings :: Browse mode
Program settings :: View mode


Лицензионное соглашение

English version of License Agreement >>

Если обратное не указано явно, авторские права на всю документацию и программное обеспечение, включённые в состав продукта PhoA, принадлежат Дмитрию Канну.

Авторское право ©2002-2004 Дмитрий Канн. Все права сохранены.

Это программное обеспечение поставляется по принципу "as-is", без каких-либо явных или подразумеваемых гарантий. Ни при каких обстоятельствах автор не может нести ответственности за любые повреждения, возникшие по причине использования этого программного обеспечения.

Допускается свободно использовать это программное обеспечение для любой цели, в том числе для коммерческих применений, а также изменять и распространять его на вторичной основе при соблюдении следующих условий:

  1. Любое вторичное распространение продукта и его файлов должно сохранять все данные об авторском праве, имеющиеся на данный момент, а также этот список условий без каких-либо изменений.
  2. Все новые инсталляции, полученные в результате перевода ресурсов PhoA на любой язык в виде бинарных файлов должны сохранять все вхождения упомянутых авторских знаков и ссылок на сайты в Интернет, которые присутствуют в настоящее время (например, в окне "О программе").
  3. Происхождение данного продукта не должно искажаться; кроме того, при использовании программного обеспечения в поставке функционального продукта упоминание в документации об оригинальном источнике ПО категорически приветствуется.
  4. Модифицированные версии должны быть недвусмысленно помечены, как таковые, а не должны прикидываться оригинальным продуктом.

Обновления: http://phoa.narod.ru
Контактный адрес: phoa@narod.ru

Благодарности

  • Jordan Russel - TB2000 & InnoSetup
  • Alex Denisov - TBX & Graphics32
  • Mike Lischke - VirtualTree & GraphicEx
  • Jim Kueneman - VirtualShellTools

    • Переводчики

  • Dominik Mayer <dominik.mayer(at)web.de> - German
  • Cesar Boschetti <cesar(at)las.inpe.br> - Brazilian Portuguese